package com.woniu.sharepark.util;

import net.glxn.qrgen.core.image.ImageType;
import net.glxn.qrgen.javase.QRCode;
import sun.misc.BASE64Encoder;

import java.io.ByteArrayOutputStream;

/**
 * @ClassName: QRCodeUtil
 * @Description: 此工具类用于生成二维码，类的使用需要导入相关依赖
 *
 *         <dependency>
 *             <groupId>net.glxn.qrgen</groupId>
 *             <artifactId>javase</artifactId>
 *             <version>2.0</version>
 *         </dependency>
 *
 * @Author: Zongjie.Li
 * @Date: 2019/6/17
 * @Version: 1.0
 **/
public class QRCodeUtil {
    /**
     * 此方法接受需要转为二维码的信息，传回String类型的data数据，在前端通过标签
     * <img src=''>
     * 将String类型的data数据转换为二维码
     *
     * @param content 获取需要转为二维码的信息
     * @return java.lang.String
     * @Author Zongjie.Li
     * @Date 2019/6/17
     * @Version 1.0
     */
    public static String qrCodeCreat(String content){
        ByteArrayOutputStream out= QRCode.from(content).to(ImageType.PNG).stream();
        byte[] data = out.toByteArray();
        BASE64Encoder encoder = new BASE64Encoder();
        return encoder.encodeBuffer(data).trim();
    }
}
